Package-level declarations

Types

Link copied to clipboard

Separates logic between the core Marigold SDK functionality and that of the Sailthru only apps

Link copied to clipboard

Class to wrap errors produced when connecting to the Marigold platform. Extends Error with a status code that can be passed up.

Link copied to clipboard
class Marigold

Keeps track of necessary environment variables provided by the developer or google. Also provides the entry point into Marigold for the developer to retrieve device information.

Link copied to clipboard

Activity to display the detail content of a Message.

Link copied to clipboard

Class to handle interactions with in-app message stream.

Link copied to clipboard
class NotificationBundle(val bundle: Bundle)

Wrapper with helpers to load data from the bundle received with a notification sent using Marigold Platform

Link copied to clipboard
class NotificationCategory(val name: String)

Defines Notification Categories that can be passed to the SDK to show actions on push notifications.

Link copied to clipboard

Configuration class for building Notifications. These setting will apply to all notifications generated by Marigold.

Link copied to clipboard

Styles a standard Marigold Notification, optionally with a given Message.

Properties

Link copied to clipboard

Notification Action Tapped Flow - subscribe to this to handle events when notification actions are tapped by the user.

Link copied to clipboard

Notification Received Flow - subscribe to this to handle events when notifications are received on the device.

Link copied to clipboard

Notification Tapped Flow - subscribe to this to handle events when notifications are tapped by the user.

Functions

Link copied to clipboard

Clear device events data.

Link copied to clipboard

Clear device events data.

Link copied to clipboard

Clear the Message Stream for the device.

Link copied to clipboard

Clear the Message Stream for the device.

Link copied to clipboard
suspend fun MessageStream.deleteMessage(message: Message)

Removes a Message from appearing in a device's message stream.

Link copied to clipboard

Removes a Message from appearing in a device's message stream.

Link copied to clipboard
suspend fun Marigold.getDeviceId(): String?

Gets this device's ID on the Marigold Platform. Marigold

Link copied to clipboard

Gets this device's ID on the Marigold Platform.

Link copied to clipboard
suspend fun MessageStream.getMessage(messageId: String): Message

Retrieves a Message for a given Message ID.

Link copied to clipboard

Retrieves a Message for a given Message ID.

Link copied to clipboard

Retrieve all Messages visible for this device.

Link copied to clipboard

Retrieve all Messages visible for this device.

Link copied to clipboard

Retrieve the profile vars set on the server.

Link copied to clipboard

Retrieve the profile vars set on the server.

Link copied to clipboard

Get the total number of unread messages in the message stream.

Link copied to clipboard

Get the total number of unread messages in the message stream.

Link copied to clipboard

If you're using Marigold email with universal links, your application will open with an encoded Marigold link url. This method will decode the link URL and return its canonical location (ie https://link.sailthru.com/blahblah will redirect to https://www.sailthru.com/careers/list/, the link's canonical location), as well as making sure that the clickthrough metrics for this link are correctly attributed in the Marigold platform. This method should be called from your receiving activity's onStart() method, and handle the starting intent's link data

Link copied to clipboard

If you're using Marigold email with universal links, your application will open with an encoded Marigold link url. This method will decode the link URL and return its canonical location (ie https://link.sailthru.com/blahblah will redirect to https://www.sailthru.com/careers/list/, the link's canonical location), as well as making sure that the clickthrough metrics for this link are correctly attributed in the Marigold platform. This method should be called from your receiving activity's onStart() method, and handle the starting intent's link data

Link copied to clipboard

Logs a cart abandonment with the Marigold platform. Use this to initiate cart abandoned flows.

Link copied to clipboard

Logs a cart abandonment with the Marigold platform. Use this to initiate cart abandoned flows.

Link copied to clipboard
suspend fun EngageBySailthru.logPurchase(purchase: Purchase)

Logs a purchase with the Marigold platform. This can be used for mobile purchase attribution.

Link copied to clipboard

Logs a purchase with the Marigold platform. This can be used for mobile purchase attribution.

Link copied to clipboard
suspend fun Marigold.setGeoIPTrackingEnabled(enabledGeoIp: Boolean)

Enabled location tracking based on IP Address. Tracking location tracking is enabled by default. Use this method for users who may not want to have their location tracked at all.

Link copied to clipboard

Enabled location tracking based on IP Address. Tracking location tracking is enabled by default. Use this method for users who may not want to have their location tracked at all.

Link copied to clipboard
suspend fun MessageStream.setMessageRead(message: Message)

Convenience method for setMessagesRead.

Link copied to clipboard

Convenience method for setMessagesRead.

Link copied to clipboard
suspend fun MessageStream.setMessagesRead(messages: List<Message>)

Marks all given messages as read and triggers an update broadcast to the unread messages count.

Link copied to clipboard

Marks all given messages as read and triggers an update broadcast to the unread messages count.

Link copied to clipboard

Set the profile vars through the SDK.

Link copied to clipboard

Set the profile vars through the SDK.

Link copied to clipboard
suspend fun EngageBySailthru.setUserEmail(userEmail: String?)

Set the User's Email.

Link copied to clipboard

Set the User's Email.

Link copied to clipboard
suspend fun EngageBySailthru.setUserId(userId: String?)

Set an arbitrary external User ID.

Link copied to clipboard

Set an arbitrary external User ID.

Link copied to clipboard
suspend fun EngageBySailthru.trackClick(sectionId: String, url: URI)

Asynchronously registers with Marigold SPM that a section has been clicked/tapped on, transitioning the user to a detail view

Link copied to clipboard
suspend fun EngageBySailthru.trackClickResult(sectionId: String, url: URI): Result<Unit>

Asynchronously registers with Marigold SPM that a section has been clicked/tapped on, transitioning the user to a detail view

Link copied to clipboard
suspend fun EngageBySailthru.trackImpression(sectionId: String, urls: List<URI>?)

Asynchronously registers an impression - a reasonable expectation that a user has seen a piece of content - with Marigold SPM. Can be used in conjunction with RecyclerView.Adapter#onViewAttachedToWindow or similar to know when a particular content item has entered the user's viewport.

Link copied to clipboard
suspend fun EngageBySailthru.trackImpressionResult(sectionId: String, urls: List<URI>?): Result<Unit>

Asynchronously registers an impression - a reasonable expectation that a user has seen a piece of content - with Marigold SPM. Can be used in conjunction with RecyclerView.Adapter#onViewAttachedToWindow or similar to know when a particular content item has entered the user's viewport.

Link copied to clipboard
suspend fun EngageBySailthru.trackPageview(url: URI, tags: List<String?>?)

Asynchronously registers that the given "page" has been viewed with Marigold SPM. Note that a Content View here directly corresponds to a page view in SPM.

Link copied to clipboard

Asynchronously registers that the given "page" has been viewed with Marigold SPM. Note that a Content View here directly corresponds to a page view in SPM.